/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package cz.muni.fi.diplomka.datalayer.dao;

import cz.muni.fi.diplomka.datalayer.entity.PlayerEntity;

/**
 * Interface for manipulation with Player Entity
 *
 * @author Jakub Kutil
 */
public interface PlayerDao {

    /**
     * Adds Player to DB
     *
     * @param playerEntity Player to add
     */
    public void addPlayer(PlayerEntity playerEntity);

    /**
     * Edits Player in DB
     *
     * @param playerEntity Player to edit
     */
    public void editPlayer(PlayerEntity playerEntity);

    /**
     * Gets Player with specified nickName
     *
     * @param nickName nickName of Player to find
     *
     * @return found Player or empty one if not found
     */
    public PlayerEntity findPlayerByNickName(String nickName);

    /**
     * Gets Player with specified ID
     *
     * @param id ID of Player to find
     *
     * @return found Player or empty one if not found
     */
    public PlayerEntity findPlayerById(Long id);
}
